ControlPedido = function(){
		var configWindow = {
			edit: "ctgProductoEditarTop",
			grid: "controlPedidoGrid",
			form: "controlPedidoForm"
		};
		return {
			obtenerIdPedido: function(){
				var i = 0;
				var grid = Ext.getCmp("controlPedidoGrid");
				var seprarado = "~";
				var gridData = "";
				Ext.each(grid.getStore().getRange(), function(){
					gridData = gridData + Ext.getCmp("controlPedidoGrid").getStore().getRange()[i].data.pedidoId + seprarado;
					i++;
	          });
				return gridData == "~" ? "":gridData;
			},
			obtenerEstadosPedidos: function(){
				var i = 0;
				var grid = Ext.getCmp("controlPedidoGrid");
				var seprarado = "~";
				var gridData = "";
				Ext.each(grid.getStore().getRange(), function(){
					gridData = gridData + Ext.getCmp("controlPedidoGrid").getStore().getRange()[i].data.pedidoEstado + seprarado;
					i++;
	          });
				return gridData == "~" ? "":gridData;
			},
			guardarControlPedido: function(){
				Asi.message.progress("Guardando Informaci\u00F3n...");
					Ext.getCmp("controlPedidoForm").getForm().submit({
						url: Asi.constants.CONTEXT_PATH + "/empleado/guardarControlPedido",
		    			timeout: Asi.constants.TIMEOUT_SECONDS,
		    			params: {
		    				"pedidoId": ControlPedido.obtenerIdPedido(),
		    				"estado": ControlPedido.obtenerEstadosPedidos()
		    			},
		    			success: function(form, action){
		    				Asi.message.alert(action.result.message);
		    				if(action.result.pedidosNuevos){
		    					var controlPedidoGrid = Ext.getCmp("controlPedidoGrid");
		    					controlPedidoGrid.getStore().removeAll();
		    					controlPedidoGrid.getStore().loadData(action.result.pedidosNuevos);
		    				}
		    				
		    			},
		    			failure: Asi.form.failureProcedure
					});
			},
			init: function(config){
				var pedidosNuevos = config.pedidosNuevos;
				var configToReturn = {};
				configToReturn.items = [];
				configToReturn.menu = AsiBotones.getBotones(AsiGen.getTipoUsuario(), AsiGen.getPantallaId());
				configToReturn.items.push({
					flex: 1,
					title: "CONTROL PEDIDO",
					autoScroll: true,
					xtype: "panel",
					layout: {
					    type: "vbox",
					    align : "center",
					    pack  : "start"
					},
					defaults: {width: 730, margins: "5 0 5 0"},
					dockedItems: [
									{
										xtype: "toolbar",
										dock: "top",
										items: [
										   '->',
										  {
									    	   text: "Guardar",
									    	   id: "ctgProductoGuardarTop",
											   iconCls: Asi.constants.icons.SAVE_ICON,
											   handler: ControlPedido.guardarControlPedido
									       }
									    ]
									}],
					items: [
						{
							title: "LISTA DE PEDIDOS A ELABORAR",
							xtype: "grid",
							id: "controlPedidoGrid",
							height: 250,
							plugins: [Ext.create('Ext.grid.plugin.CellEditing',{clicksToEdit: 1})],
							minHeight: 250,
							collapsible : true,
							store: new Ext.data.SimpleStore({
						    	data: pedidosNuevos || [],
						    	fields: [
									"pedidoId",
									"pedidoFechaPedido",
									"pedidoFechaEntrega",
									"pedidoEstado",
									"pedidoDireccionEntrega",
									"usuario"
				    	        ]
						    }),
						    columns: [
					            {header: "Numero pedido",  dataIndex: "pedidoId", flex:1, minWidth: 120},
					            {header: "Fecha del pedido",  dataIndex: "pedidoFechaPedido", flex:1, width: 120},
					            {header: "Fecha de Entrega",  dataIndex: "pedidoFechaEntrega", flex:1, width: 120},
					            {header: "Direccion de entrega",  dataIndex: "pedidoDireccionEntrega", flex:1, width: 120},
					            {header: "Usuario",  dataIndex: "usuario", flex:1, width: 120},
					            
					            {
			                        header: 'Estado',
			                        dataIndex: 'pedidoEstado',
			                        renderer: function(value){
			                        	if(value == 0){
			                        		return 'nuevo'
			                        	}
			                        	if (value == 1){
			                        		return '100%'
			                        	}
			                        	
			                        	
			                        },
			                        editor:
			                            {
			                                xtype: 'combobox',
			                                store: new Ext.data.SimpleStore({
												data: Asi.combos.porcentajeAbonado() || [],
												fields: [ "id", "descripcion"]
											}),
											displayField: "descripcion",
											valueField: "id"
			                            }
			                    }

						    ],

						    listeners: {
						    	selectionchange: function(model, records){
						    		if(!records || records.length <= 0) return;
						    		var record = records[0];
						    		if(record != null){

						    			Asi.form.setValues("controlPedidoForm", record.data);
						    			Asi.form.setEnable(Ext.getCmp("controlPedidoForm"));
						    		}
						    	},
						    	afterrender: function(){
						    		if(this.store.data.items.length > 0) Asi.grid.selectFirstRow(this);
						    		Asi.form.switchButton(configWindow, "edit");
						    	}
						    }
						},{
				        	xtype: "form",
							id: "controlPedidoForm",
							flex: 1,
						    border: false,
						    autoScroll: true,
							layout: {
								type: "table",
								columns: 6,
								style : {
									width : "730px",
									"margin-top" : "5px",
									"margin-bottom" : "40px"
								},
								align : "center"
							},
							defaults: {
								width: 230,
								selectOnFocus: true,
								enforceMaxLength: true,
								maxLength: 200,
								typeAhead: true,
								minChars: 1,
								queryMode: "local",
								forceSelection: true,
								allowEnable: true,
								colspan: 2
							},
							items: [
					        	 {
									xtype: "label",
									text: "DESCRIPCION DE PRODUCTO",
									cls: "x-form-item label_header",
									colspan: 8,
									width: 730
								},
								{xtype: "label", text: "Numero de Pedido", cls: "x-form-item label_spacing"},
								{xtype: "label", text: "Fecha de Compra", cls: "x-form-item label_spacing"},
								{xtype: "label", text: "Fecha de Emtrega", cls: "x-form-item label_spacing"},
								{
									xtype: "textfield",
									fieldCls: "txtborder",
									id: "pedidoId",
									maxLength: 100
								},{
									xtype: "textfield",
									fieldCls: "txtborder",
									id: "pedidoFechaPedido",
								},{
									xtype: "textfield",
									fieldCls: "txtborder",
									id: "pedidoFechaEntrega",
									maxLength: 100
								},
								{xtype: "label", text: "DireccionEntrega", cls: "x-form-item label_spacing"},
								{xtype: "label", text: "Usuario", cls: "x-form-item label_spacing"},
								{xtype: "label", text: "Estado", cls: "x-form-item label_spacing"},
								{
									xtype: "textfield",
									fieldCls: "txtborder",
									id: "pedidoDireccionEntrega",
									maxLength: 100
								},{
									xtype: "textfield",
									fieldCls: "txtborder",
									id: "usuario",
									maxLength: 100
								},{
									xtype: "textfield",
									fieldCls: "txtborder",
									id: "pedidoEstado",
									maxLength: 100,
									listeners: {
										change: function(){
											Ext.getCmp("pedidoEstado").setValue("NUEVO");
										}
									}
								}
								
								
								

							]
				        }
					]
					
				});
				return configToReturn;
			}
		};
	}();